package abiz

import (
	"xin-job/admin/callback"
	"xin-job/admin/registry"
	"xin-job/core/biz"
)

var instance = &BizAdmin{}

func GetBizAdmin() *BizAdmin {
	return instance
}

type BizAdmin struct {
}

// 回调定时任务的执行信息给调度中心的方法
func (a *BizAdmin) Callback(handleCallbackParam []*biz.HandleCallbackParam) biz.Return[string] {
	callback.GetInstance().Callback(handleCallbackParam)
	return biz.Return[string]{Code: 200}
}

// 执行器注册自己到调度中心的方法
func (a *BizAdmin) Registry(registryParam *biz.RegistryParam) biz.Return[string] {
	return registry.GetInstance().Registry(registryParam)
}

// 执行器将自己从调度中心移除的方法
func (a *BizAdmin) RegistryRemove(registryParam *biz.RegistryParam) biz.Return[string] {
	return registry.GetInstance().RegistryRemove(registryParam)
}
